package com.yanggu.scala.chapater02

object UnitNullNothingDemo {

  def main(args: Array[String]): Unit = {
    //1. Unit 类似于java中的void。只有一个实例值()
    //在scala中，调用方法时，当方法没有形参时，小括号可以省略。
    //但是一般不建议省略，当使用对象调用方法的时候容易，且该方法没有形参的时候。容易和对象.属性名搞混
    //在idea中方法是斜体的, 变量名不是
    val hello: Unit = sayHello()
    println(hello)

    //2. Null 和java中的null类似。Null可以赋值给任意的AnyRef(引用类型)。但是不能赋值给AnyVal(Int、Double等数值类型)
    var dog = new Dog
    dog = null
    var num1 = 10
//    num1 = null 这里直接报错，但是编译时不报错，在运行时报错。

  }

  def sayHello() : Unit = {
    println("say hello方法被调用了")
  }

}

class Dog {

}
